Applying Code Specialization to FFT Libraries for Integral Parameters
نویسندگان
چکیده
Code specialization is an approach that can be used to improve the sequence of optimizations to be performed by the compiler. The performance of code after specialization may vary, depending upon the structure of the application. For FFT libraries, the specialization of code with different parameters may cause an increase in code size, thereby impacting overall behavior of applications executing in environment with small instruction caches. In this article, we propose a new approach for specializing FFT code that can be effectively used to improve performance while limiting the code increase by incorporating dynamic specialization. Our approach makes use of a static compile time analysis and adapts a single version of code to multiple values through runtime specialization. This technique has been applied to different FFT libraries over Itanium IA-64 platform using icc compiler v 9.0. For highly efficient libraries, we are able to achieve speedup of more than 80% with small increase in code size.
منابع مشابه
A Search Optimization in Fftw
Generating high performance fast Fourier transform(FFT) libraries for different computer architectures is an important task. Architecture vendors sometimes have to rely on dedicated experts to tune FFT implementation on each new platform. Fastest Fourier transform in the West(FFTW) replaces this tedious and repeated work with an adaptive FFT library. It automatically generates FFT code that are...
متن کاملJava Signal Processing : FFTs with
This paper investigates the possibility of using Java as a language for Digital Signal Processing. We compare the performance of the Fast Fourier Transform using Java interpreters, compilers, and native execution. To characterize the Java language as a platform for signal processing, we have implemented a traditional FFT algorithm in both C and Java and compared their relative performance. Addi...
متن کاملDomain-Specific Type Inference for Library Generation in a Telescoping Compiler
Telescoping languages is a strategy for allowing users to develop code in high-level, domain-specific languages and still achieve high performance. It uses extensive offline processing of the library defining the language. This process speculatively determines the possible uses of the library subroutines and generates variants specialized toward those uses. LibGen is a telescoping-language syst...
متن کاملAdaptive Dynamic Scheduling of Fft on Hierarchical Memory and Multi - Core Architectures
In this dissertation, we present a framework for expressing, evaluating and executing dynamic schedules for FFT computation on hierarchical and shared memory multiprocessor / multi-core architectures. The framework employs a two layered optimization methodology to adapt the FFT computation to a given architecture and dataset. At installation time, the code generator adapts to the microprocessor...
متن کاملAn Integral Structure in Quantum Cohomology and Mirror Symmetry for Toric Orbifolds
We introduce an integral structure in orbifold quantum cohomology associated to the K-group and the b Γ-class. In the case of compact toric orbifolds, we show that this integral structure matches with the natural integral structure for the Landau-Ginzburg model under mirror symmetry. By assuming the existence of an integral structure, we give a natural explanation for the specialization to a ro...
متن کامل